// [DELETE] 1.8.1
// /* eslint-disable consistent-return */
// import React from 'react';
// import { Tree, Transfer } from 'antd';
//
// const { TreeNode } = Tree;
//
// // Customize Table Transfer
// const isChecked = (selectedKeys, eventKey) => selectedKeys.indexOf(eventKey) !== -1;
//
// const generateTree = (treeNodes = [], checkedKeys = []) => treeNodes.map(({ children, ...props }) => (
//     <TreeNode {...props} disabled={checkedKeys.includes(props.key)}>
//         {generateTree(children, checkedKeys)}
//     </TreeNode>
// ));
//
// const TreeTransfer = ({ dataSource, targetKeys, ...restProps }) => {
//     const transferDataSource = [];
//     function flatten(list = []) {
//         list.forEach(item => {
//             transferDataSource.push(item);
//             flatten(item.children);
//         });
//     }
//     flatten(dataSource);
//
//     return (
//         <Transfer
//             {...restProps}
//             targetKeys={targetKeys}
//             dataSource={transferDataSource}
//             className="tree-transfer"
//             render={item => item.title}
//             showSelectAll={false}
//         >
//             {({ direction, onItemSelect, selectedKeys }) => {
//                 if (direction === 'left') {
//                     const checkedKeys = [...selectedKeys, ...targetKeys];
//                     return (
//                         <Tree
//                             blockNode
//                             checkable
//                             checkStrictly
//                             defaultExpandAll
//                             checkedKeys={checkedKeys}
//                             onCheck={(
//                                 _,
//                                 {
//                                     node: {
//                                         props: { eventKey }
//                                     }
//                                 }
//                             ) => {
//                                 onItemSelect(
//                                     eventKey,
//                                     !isChecked(checkedKeys, eventKey)
//                                 );
//                             }}
//                             onSelect={(
//                                 _,
//                                 {
//                                     node: {
//                                         props: { eventKey }
//                                     }
//                                 }
//                             ) => {
//                                 onItemSelect(
//                                     eventKey,
//                                     !isChecked(checkedKeys, eventKey)
//                                 );
//                             }}
//                         >
//                             {generateTree(dataSource, targetKeys)}
//                         </Tree>
//                     );
//                 }
//             }}
//         </Transfer>
//     );
// };
//
// export default TreeTransfer;
